package com.ruoyi.hospital.domain.coupon;

import java.math.BigDecimal;
import java.util.List;

import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.domain.NewBaseEntity;
import com.ruoyi.hospital.domain.storeInfo.PharmacyDruginfo;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;

/**
 * 优惠券活动对象 coupon_info
 *
 * @author wendao
 * @date 2024-09-11
 */
public class CouponInfo extends NewBaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Integer id;

    /** 优惠卷名称 */
    @Excel(name = "优惠卷名称")
    private String title;

    /** 类型 */
    @Excel(name = "类型")
    private Integer useScope;

    /** 面值 */
    @Excel(name = "面值")
    private BigDecimal couponAmount;

    /** 商品 */
    @Excel(name = "商品")
    private String productIds;
    private List<PharmacyDruginfo> productList;

    /** 是否有门槛 */
    @Excel(name = "是否有门槛")
    private Integer isLimit;

    /** 最低消费 */
    @Excel(name = "最低消费")
    private BigDecimal minAmount;

    /** 是否限量 */
    @Excel(name = "是否限量")
    private Integer isNum;

    /** 优惠卷数量 */
    @Excel(name = "优惠卷数量")
    private Integer totalCount;

    /** 剩余总数 */
    @Excel(name = "剩余总数")
    private Integer leftCount;

    /** 限领数量 */
    @Excel(name = "限领数量")
    private Integer userLimit;

    /** 是否限时 */
    @Excel(name = "是否限时")
    private Integer isTime;

    /** 开始时间 */
    @Excel(name = "开始时间")
    private Integer beginTime;

    /** 结束时间 */
    @Excel(name = "结束时间")
    private Integer endTime;

    /** 是否启用 */
    @Excel(name = "是否启用")
    private Integer isEnabled;

    private Integer storeId;

    public Integer getStoreId() {
        return storeId;
    }

    public void setStoreId(Integer storeId) {
        this.storeId = storeId;
    }
    public List<PharmacyDruginfo> getProductList() {
        return productList;
    }

    public void setProductList(List<PharmacyDruginfo> productList) {
        this.productList = productList;
    }

    public void setId(Integer id)
    {
        this.id = id;
    }

    public Integer getId()
    {
        return id;
    }
    public void setTitle(String title)
    {
        this.title = title;
    }

    public String getTitle()
    {
        return title;
    }
    public void setUseScope(Integer useScope)
    {
        this.useScope = useScope;
    }

    public Integer getUseScope()
    {
        return useScope;
    }
    public void setCouponAmount(BigDecimal couponAmount)
    {
        this.couponAmount = couponAmount;
    }

    public BigDecimal getCouponAmount()
    {
        return couponAmount;
    }
    public void setProductIds(String productIds)
    {
        this.productIds = productIds;
    }

    public String getProductIds()
    {
        return productIds;
    }
    public void setIsLimit(Integer isLimit)
    {
        this.isLimit = isLimit;
    }

    public Integer getIsLimit()
    {
        return isLimit;
    }
    public void setMinAmount(BigDecimal minAmount)
    {
        this.minAmount = minAmount;
    }

    public BigDecimal getMinAmount()
    {
        return minAmount;
    }
    public void setIsNum(Integer isNum)
    {
        this.isNum = isNum;
    }

    public Integer getIsNum()
    {
        return isNum;
    }
    public void setTotalCount(Integer totalCount)
    {
        this.totalCount = totalCount;
    }

    public Integer getTotalCount()
    {
        return totalCount;
    }
    public void setLeftCount(Integer leftCount)
    {
        this.leftCount = leftCount;
    }

    public Integer getLeftCount()
    {
        return leftCount;
    }
    public void setUserLimit(Integer userLimit)
    {
        this.userLimit = userLimit;
    }

    public Integer getUserLimit()
    {
        return userLimit;
    }
    public void setIsTime(Integer isTime)
    {
        this.isTime = isTime;
    }

    public Integer getIsTime()
    {
        return isTime;
    }
    public void setBeginTime(Integer beginTime)
    {
        this.beginTime = beginTime;
    }

    public Integer getBeginTime()
    {
        return beginTime;
    }
    public void setEndTime(Integer endTime)
    {
        this.endTime = endTime;
    }

    public Integer getEndTime()
    {
        return endTime;
    }
    public void setIsEnabled(Integer isEnabled)
    {
        this.isEnabled = isEnabled;
    }

    public Integer getIsEnabled()
    {
        return isEnabled;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("title", getTitle())
                .append("useScope", getUseScope())
                .append("couponAmount", getCouponAmount())
                .append("productIds", getProductIds())
                .append("isLimit", getIsLimit())
                .append("minAmount", getMinAmount())
                .append("isNum", getIsNum())
                .append("totalCount", getTotalCount())
                .append("leftCount", getLeftCount())
                .append("userLimit", getUserLimit())
                .append("isTime", getIsTime())
                .append("beginTime", getBeginTime())
                .append("endTime", getEndTime())
                .append("isEnabled", getIsEnabled())
                .append("createTime", getCreateTime())
                .append("updateTime", getUpdateTime())
                .toString();
    }
}
